package com.efast.cafe.portal.dao.api;

import java.util.List;

import com.efast.cafe.portal.bean.api.ApiSystemDefineBean;
import com.efast.cafe.portal.bean.api.SystemQueryBean;
import com.efast.cafe.portal.entity.api.ApiSystemDefine;
import org.springframework.data.repository.query.Param;

/**
 * <p>接口</p>
 * <p>Table: api_system_define - 所属系统定义</p>
 *
 * @since ${.now}
 */

public interface ApiSystemDefineDao {
	
	/**
	 * 根据查询queryBean查询所有满足条件的系统，并且分页显示
	 * @param queryBean
	 */
	public List<ApiSystemDefineBean> querySystemListPage(SystemQueryBean queryBean);
	
	/**
	 * 根据查询queryBean查询所有满足条件的系统
	 * @param queryBean
	 */
	public List<ApiSystemDefineBean> querySystemList(SystemQueryBean queryBean);	
	/**
	 * 根据查询queryBean查询所有满足条件的系统的分页数
	 * @param queryBean
	 * @return
	 */
	public Integer querySystemListPageCount(SystemQueryBean queryBean);
    /**
     * 新增一个新系统
     * @param apiSystemDefine
     * @return
     */
     public Integer addNewSystem(ApiSystemDefine apiSystemDefine);
     /**
      * 修改系统信息
      * @param apiSystemDefine
      * @return
      */
     public Integer updateSystem(ApiSystemDefine apiSystemDefine);
     /**
      * 根据id查找系统详细信息，并分页显示
      * @param systemId
      * @return
      */
     public ApiSystemDefine findSystemDetailsById(@Param(value="systemId")Integer systemId);
     /**
      * 根据系统名称，系统路径，系统版本号查询系统是否存在
      * @param apiSystemDefine
      * @return 
      */
     public Integer systemIsExist(ApiSystemDefine apiSystemDefine);
     
     /**
      * 查询去除关联指定模块的所有系统
      * @Date        :      2017年2月7日
      * @param systemId
      * @return
      */
     public List<ApiSystemDefineBean> findSystemIsNotId(@Param(value="moduleId")Integer moduleId);
	
}